Online shopping is a form of e-commerce, which allows customers to purchase available products without having to go out of their homes to buy products of their choice. Online shopping also provides geographically distributed vendors to connect with their potentials customers without having to be physically located near them. At present, a large number of online storefronts are available that are creating a global platform for online shopping. These online storefronts allow the users to view a catalogue of products providing them with a wide variety of options to choose from. The transactions also are made through secure encrypted communication pipes, thus, making it secure and comfortable for the customers to shop.
An online storefront requires providing a plurality of products and product recommendations. At present there does not exist a flexible recommendations pattern that accommodates complex topic requests in a scalable manner. Moreover, there does not exist a mechanism for dynamically deriving product recommendations from a plurality of heterogeneous stores and marketplaces and providing the recommendations at a single storefront thereby providing a complete shopping experience to a customer. Hence, there exists a need for a mechanism that enables product recommendations to be derived from a plurality of heterogeneous stores and marketplaces. Moreover, there is a need for a mechanism for normalizing and refining the product recommendations derived from a plurality of distinct stores and marketplaces displaying the product recommendations at an online storefront.